const { defineConfig } = require('@vue/cli-service')
const NodePolyfillPlugin = require('node-polyfill-webpack-plugin')

module.exports = defineConfig({
  transpileDependencies: true,
  configureWebpack: {
    resolve: {
      fallback: {
        fs: false, // 不使用 fs 模块
        path: require.resolve("path-browserify"), // 使用 path-browserify
      },
    },
  },
  pluginOptions: {
    electronBuilder: {
      appId: "com.ydrtmppush.id",
      preload: "preload.js", // 预加载脚本
      files: [
        "dist_electron/**/*", // 打包 dist_electron 目录下的所有文件
        "preload.js", // 打包 preload.js
        "ffmpeg/**/*"
      ],
      extraResources: [
        {
          from: "ffmpeg", // 指定 ffmpeg 文件夹
          to: "ffmpeg", // 在打包后将其放置在应用的根目录下
          filter: ["**/*"] // 包含所有文件
        }
      ],
      nsis: {
        oneClick: false, // 安装器设置
        perMachine: true,
        runAfterFinish: true,
        installerIcon: "build/icons/installer.ico", // 安装器图标
        uninstallerIcon: "build/icons/uninstaller.ico", // 卸载器图标
        installerHeaderIcon: "build/icons/header.ico", // 安装器头部图标
        createDesktopShortcut: true,
        createStartMenuShortcut: true,
        shortcutName: "ydrtmppush",
        welcomePage: "src/installer.html", // 欢迎页面
      },
    },
  },
})
